Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

173
Views
Ejecutar funciones en orden dentro de declaraciones "if"

tengo algunas funciones

 function growSeparator() { $('.applications-worth-module__separator').addClass('applications-worth-module__separator--active'); } function reachPkt1() { $('.point-1-separator').addClass('point-separator--pkt1_active'); } function reachPkt2() { $('.point-2-separator').addClass('point-separator--pkt2_active'); } function reachPkt3() { $('.point-3-separator').addClass('point-separator--pkt3_active'); } function reachPkt4() { $('.point-4-separator').addClass('point-separator--pkt4_active'); }

Cada uno de ellos agrega clase css con animación de fotogramas clave en su interior. Intento ejecutar una función cuando el elemento llega a la mitad de la pantalla. Estoy usando getBoundingClientRect para hacerlo.

 var pkt1 = document.querySelector(".point-1__container"); var pkt2 = document.querySelector(".point-2__container"); var pkt3 = document.querySelector(".point-3__container"); var pkt4 = document.querySelector(".point-4__container"); window.addEventListener('scroll', (e) => { if (pkt1.getBoundingClientRect().top < window.innerHeight/2) { growSeparator(); } if (pkt1.getBoundingClientRect().top < (window.innerHeight/2)) { reachPkt1(); } if (pkt2.getBoundingClientRect().top < (window.innerHeight/2)) { reachPkt2(); } if (pkt3.getBoundingClientRect().top < (window.innerHeight/2)) { reachPkt3(); } if (pkt4.getBoundingClientRect().top < (window.innerHeight/2)) { reachPkt4(); } })

El problema es que cuando me desplazo al último elemento, todas las funciones se activan al mismo tiempo, no una por una. Traté de usar el evento "animationend" y "transitionend", pero solo funciona para un elemento y para otros cuatro, no.

¿Cómo puedo lograr este efecto, cuando me desplazo al último elemento (.point-4__container) todas mis funciones anteriores se ejecutan una tras otra?

Gracias.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!